package com.sc.nft.entity.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.sc.nft.enums.MallOrderRefundTypeEnum;
import com.sc.nft.enums.MallRefundStatusEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 售后以及操作日志综合DTO
 *
 * @author liGen
 * @version 1.0
 * @date 2023/11/25 3:19 下午
 */
@Data
public class RefundOrderLogDTO {

    /**
     * id
     */
    @ApiModelProperty("id")
    @TableId(type = IdType.AUTO)
    protected Long id;

    /**
     * 订单ID
     */
    private Long orderId;

    /**
     * 用户Id
     */
    private Long userId;

    /**
     * 售后类型
     */
    private MallOrderRefundTypeEnum refundType;

    /**
     * 订单商品ID
     */
    private Long orderGoodsId;

    /**
     * 订单编号
     */
    private String orderNo;

    /**
     * 售后编号
     */
    private String refundNo;

    /**
     * 订单支付时间
     */
    private Date orderPayTime;

    /**
     * 售后数量
     */
    private Integer refundNum;

    /**
     * 售后退款金额
     */
    private BigDecimal refundAmount;

    /**
     * 余额支付金额
     */
    private BigDecimal refundPayWalletPrice;
    /**
     * 红包支付金额
     */
    private BigDecimal refundPayBalancePrice;
    /**
     * 心愿礼金支付
     */
    private BigDecimal refundWishBalancePrice;

    /**
     * 订单金额
     */
    private BigDecimal orderAmount;

    /**
     * 订单实际支付金额
     */
    private BigDecimal orderPayAmount;

    /**
     * 申请原因
     */
    private String reason;

    /**
     * 申请描述
     */
    private String description;

    /**
     * 售后状态：
     */
    private MallRefundStatusEnum refundStatus;

    /**
     * 处理时间
     */
    private Date handleTime;

    /**
     * 凭证图片，以逗号隔开
     */
    private String proofPics;

    /**
     * 联系号码
     */
    private String contactNumber;

    /**
     * 商家售后快递单号
     */
    private String deliveryNo;

    /**
     * 商家售后快递名称
     */
    private String deliveryName;

    /**
     * 用户快递单号
     */
    private String userDeliveryNo;

    /**
     * 用户快递名称
     */
    private String userDeliveryName;

    /**
     * 备注
     */
    private String remark;

    /**
     * log时间
     */
    private Date logTime;
}
